package org.mod4j.dslcommon.xpand.properties;

import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.xtend2.lib.StringConcatenation;
import org.mod4j.dslcommon.generator.helpers.ModelHelpers;

@SuppressWarnings("all")
public class PropertyComments {
  
  public StringConcatenation extensionPointHeader(final String generator, final EObject object) {
    StringConcatenation _builder = new StringConcatenation();
    _builder.append("###");
    _builder.newLine();
    _builder.append("#    Initially generated by Mod4j. ");
    _builder.newLine();
    _builder.append("#        Time of generation : ");
    String _timestamp = ModelHelpers.timestamp();
    _builder.append(_timestamp, "");
    _builder.newLineIfNotEmpty();
    _builder.append("#        Application model  : ");
    EClass _eClass = object.eClass();
    String _name = _eClass.getName();
    _builder.append(_name, "");
    _builder.newLineIfNotEmpty();
    _builder.append("#        Generator          : ");
    _builder.append(generator, "");
    _builder.newLineIfNotEmpty();
    _builder.append("#");
    _builder.newLine();
    _builder.append("#    It is intended to customize and maintain this file by hand. ");
    _builder.newLine();
    _builder.append("#    If you remove this file, it will be regenerated by Mod4j to its original state.");
    _builder.newLine();
    _builder.append("###");
    _builder.newLine();
    return _builder;
  }
  
  public StringConcatenation regenerationWarningHeader(final String generator, final EObject object) {
    StringConcatenation _builder = new StringConcatenation();
    _builder.append("###");
    _builder.newLine();
    _builder.append("#    DO NOT MODIFY THIS FILE, CHANGES WILL BE AUTOMATICALLY OVERWRITTEN! ");
    _builder.newLine();
    _builder.append("#");
    _builder.newLine();
    _builder.append("#    Generated by Mod4j. ");
    _builder.newLine();
    _builder.append("#        Time of generation : ");
    String _timestamp = ModelHelpers.timestamp();
    _builder.append(_timestamp, "");
    _builder.newLineIfNotEmpty();
    _builder.append("#        Application model  : ");
    EClass _eClass = object.eClass();
    String _name = _eClass.getName();
    _builder.append(_name, "");
    _builder.newLineIfNotEmpty();
    _builder.append("#        Generator          : ");
    _builder.append(generator, "");
    _builder.newLineIfNotEmpty();
    _builder.append("##");
    _builder.newLine();
    return _builder;
  }
}